Haptic feedback using a keyboard device

ABSTRACT

A low-cost haptic feedback keyboard device for providing haptic feedback to a user for enhancing interactions in a displayed environment provided by a computer. The haptic keyboard device can be a keyboard having multiple keys, or can be a wrist rest or other attachment coupled to a keyboard. The device includes a housing that is physically contacted by the user and rests on a support surface. An actuator is coupled to the housing and applies a force to the housing approximately along an axis that is substantially perpendicular to the support surface, where the force is transmitted to the user contacting the housing. In one embodiment, the force is an inertial force that is output by moving an inertial mass. The keyboard device can be used in conjunction with another haptic device, such as a mouse, trackball, or joystick.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of parent application:

application Ser. No. 10/737,400, filed Dec. 16, 2003 on behalf of LouisRosenberg, now U.S. Pat. No. 7,106,305 entitled “Haptic Feedback Using aKeyboard Device,” which is a continuation of application Ser. No.09/570,361, filed May 12, 2000 on behalf of Louis B. Rosenberg, now U.S.Pat. No. 6,693,626 entitled “Haptic Feedback Using a Keyboard Device,”which is a continuation-in-part of parent patent applications:

application Ser. No. 09/456,887, filed Dec. 7, 1999 on behalf of LouisRosenberg, now U.S. Pat. No. 6,211,861 entitled, “Tactile Mouse Device,”

application Ser. No. 09/507,539, filed Feb. 18, 2000 on behalf ofBruneau et al., now U.S. Pat. No. 6,707,443 entitled, “Haptic TrackballDevice,”

and which application claims priority to Provisional Patent ApplicationNos. 60/172,953, filed Dec. 21, 1999, and 60/182,868, filed Feb. 16,2000,

all of which are incorporated by reference herein in their entirety.

BACKGROUND OF THE INVENTION

The present invention relates generally to interface devices forallowing humans to interface with computer systems, and moreparticularly to computer interface devices that allow the user toprovide input to computer systems and allow computer systems to providehaptic feedback to the user.

A user can interact with an environment displayed by a computer toperform functions and tasks on the computer, such entering data,experiencing a simulation or virtual reality environment, using acomputer aided design system, operating a graphical user interface(GUI), etc. A common human-computer interface devices used for inputtinginformation to a computer is a keyboard device, such as a standard104-key keyboard, laptop keyboard, numeric keypad, or the like.Inputting information via a keyboard remains an efficient and often-usedway of interfacing with computer systems.

Other interface devices are also used to input information to a computersystem. For example, many users use a mouse, trackball, or stylus tomove a cursor in a graphical environment to select various functions inthe graphical environment. In other applications such as games, ajoystick, steering wheel, sphere, gamepad, etc., can be used to provideinput to the computer system. In some of these interface devices, forcefeedback or tactile feedback is also provided to the user, moregenerally known herein as “haptic feedback.” These types of interfacedevices can provide physical sensations, which are felt by the usermanipulating a user manipulandum of the interface device. Typically, oneor more motors or other actuators are coupled to the device and arecontrolled by a processor or the controlling computer system. Thecomputer system controls forces, such as vibrations, pulses, springforces, etc., on the device in conjunction and coordinated withcomputer-displayed events and interactions by sending control signals orcommands to the actuators.

Many users use both a keyboard and another device, such as a mouse, whenproviding input to a computer system. For example, a user may use amouse to control a cursor in a word processor to select words orsentences or paste text in a particular location. The user uses thekeyboard to input the letters and other characters in the document. Thispresents a problem when providing tactile feedback only via a mouse orsimilar interface device, which is typically the case. The user mustcontact the mouse or other device to feel the haptic feedback, yet theuser must remove his or her hand from the device when enteringinformation with the keyboard. Thus, there are numerous times when theuser is not experiencing haptic feedback due to use of the keyboard.

SUMMARY OF THE INVENTION

The present invention is directed to a haptic feedback keyboard devicethat allows the user to experience haptic feedback when using thekeyboard. This allows the user to provide input to a computer system andexperience haptic feedback when typing and otherwise inputtinginformation using a keyboard.

More specifically, one embodiment of the present invention provides ahaptic feedback keyboard device that is coupled to a host computer,which implements a host application program. The haptic feedback deviceprovides haptic feedback to a user inputting information to the hostcomputer by pressing keys on a keyboard device, and includes a housingthat is physically contacted by the user. One preferred embodiment is awrist rest that is positioned next to the keyboard. The housing rests ona support surface, where the user rests at least a portion of at leastone hand on the housing while pressing keys of the keyboard device orduring periods of time between pressing keys. An actuator is coupled tothe housing of the device, which applies a force to the housingapproximately along an axis that is substantially perpendicular to thesupport surface, wherein the force is transmitted to the user contactingthe housing.

The force can be an inertial force that is output approximately alongthe axis perpendicular to the support surface, where the actuatoroutputs the inertial force to the housing by moving an inertial mass. Insome embodiments, the inertial mass can include the actuator, where aflexure couples the actuator to the housing and allows the actuator tobe moved as the inertial mass. The inertial force is correlated with aninteraction of at least two graphical objects displayed by the hostcomputer on a display device. The inertial force is a pulse correlatedwith the interaction of a user-controlled cursor with a graphical objectdisplayed in a graphical user interface. An interface device separatefrom the keyboard device and the haptic feedback device control theuser-controlled cursor. The force can also be a contact force that isprovided by using the actuator to drive a moving element that contactsthe user.

Preferably, at least one compliant element, made of a material such asrubber or foam, is coupled to the housing and supports the housing onthe support surface. The compliance of the element allows the force tobe greater in magnitude than if the housing contacted the supportsurface directly. A microprocessor, separate from the host computer, canreceive host commands from the host computer and output force signals tothe actuator for controlling the force.

In another embodiment of the present invention, the haptic feedbackkeyboard device includes a housing that is physically contacted by theuser and rests on a support surface. A number of keys are provided whichare receptive to a physical contact by the user. A sensor device detectswhen at least one of the keys is pressed by the user, where the sensordevice is capable of providing an input signal when a key is pressed. Anactuator is coupled to the housing and applies a force to the housing,where the force is transmitted to the user contacting the housing. Atleast one compliant element is preferably coupled between a portion ofthe housing contacted by the user and the support surface, the compliantelement amplifying the force output from the actuator by allowing thecontacted portion of the housing to move with respect to the supportsurface. For example, the compliant element can be a compliant foot orlayer provided between the housing and the support surface. The forcecan be output approximately along an axis that is perpendicular to thesupport surface. The force is correlated with an interaction ofgraphical objects displayed in a graphical environment implemented bythe host computer. A method similarly includes detecting the pressing ofat least one key of a keyboard device coupled to the host computer, andproviding information from the host computer to an actuator to control ahaptic sensation which is correlated with a computer-implementedinteraction or event. A force is output on a housing contacted by theuser using the actuator approximately along an axis perpendicular to asurface supporting the housing.

The present invention advantageously provides a haptic feedback keyboarddevice that is significantly lower in cost than other types of hapticfeedback devices and is thus well-suited for home consumer applications.One or more low-cost actuators can be provided that apply a force in aparticular degree of freedom, such as the Z-axis perpendicular to thesupport surface, and compliance is provided between the surface and thehousing to allow forces of greater magnitude. The actuator of thepresent invention can provide a variety of different types of forcesensations to enhance the user's interfacing and experience with acomputer application.

These and other advantages of the present invention will become apparentto those skilled in the art upon a reading of the followingspecification of the invention and a study of the several figures of thedrawing.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a perspective view of system including a haptic keyboarddevice of the present invention connected to a host computer;

FIG. 2 is a side cross sectional view of a wrist rest device of thekeyboard device of FIG. 1 providing haptic feedback;

FIG. 3 is a perspective view of one embodiment of an actuator assemblysuitable for use with the present invention;

FIG. 4 a is perspective view and FIG. 4 b is a side cross sectional viewof a second embodiment of the keyboard device of the present invention;

FIG. 5 is a perspective view of a third embodiment of a haptic keyboarddevice of the present invention; and

FIG. 6 is a block diagram of the haptic device and host computer of thepresent invention.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

FIG. 1 is a perspective view of a haptic feedback interface system 10 ofthe present invention capable of providing input to a host computerbased on the user's manipulation of a keyboard and capable of providinghaptic feedback to the user of the interface system based on eventsoccurring in a program implemented by the host computer. System 10includes a keyboard device 12 and a host computer 14.

Keyboard device 12 includes a keyboard 15 and a wrist rest 20. Keyboard15 includes a housing 16 and a number of keys 18. The user providesinput to the computer system 14 by pressing the keys 18 of the keyboardas is well known. Herein, “pressing” a key can mean any action includingphysically contacting a predefined key or area to provide an inputsignal to a host computer or other controller, and can includephysically moving a key from a rest position to a depressed position,contacting a predefined area that senses user contact, etc. The keyboard15 can be a full-sized keyboard with over 100 keys, as shown, or asmaller version, such as a numeric keypad (shown in FIGS. 4 a and 4 b),portable keyboard, etc.

The keyboard 15 can provide input to an application program in agraphical user interface/operating system, such as a word processor,spreadsheet program, database program, mail program, web browser, etc.The application program can also be a game program, simulation program,etc., where the key input allows the user to control a graphical objector entity. For example, a word processing program can output forcesensation commands to the keyboard device 12 to provide pulses or joltsthat coincide with page breaks scrolling by, borders of windows or otherdisplayed areas crossed by the cursor, etc. In a game program, a forcecommand or signal can be sent to the device 12 when a bullet, wall, orother object impacts the user's character or vehicle, when a shot isfired by the user, etc.

In the embodiment shown, the user preferably rests his or her wristand/or palm on the wrist rest 20 while typing on the keyboard 12. Wristrest 20 includes haptic feedback generator that is responsive to signalsfrom the host computer 14 and/or a local microprocessor. This allows theuser to experience haptic feedback provided by actuator(s) in the wristrest 20, as described in greater detail below with respect to FIG. 2.

Keyboard device 12 is coupled to the computer 14 by a bus 22, whichcommunicates signals between device 12 and computer 14 and also providespower to the keyboard device 12. Components of the present inventionsuch as an actuator (described below) require power that in someembodiments can be supplied through the bus 22, e.g. if the bus is, forexample, a USB or Firewire bus. In some embodiments, the power for theactuator can be supplemented or solely supplied by a power storagedevice provided on the device 12 (such as in wrist rest 20), such as acapacitor or one or more batteries. Some embodiments of such a deviceare disclosed in U.S. Pat. No. 5,691,898, incorporated herein byreference. In other embodiments, signals can be sent between keyboarddevice 12 and computer 14 by wireless transmission/reception ofelectromagnetic energy (infrared, radio frequency (RF), etc.) or othertypes of signals.

Host computer 14 is preferably a personal computer or workstation, suchas a PC compatible computer or Macintosh personal computer, or a Sun orSilicon Graphics workstation. For example, the computer 14 can operateunder the Windows™, MacOS, Unix, or MS-DOS operating system.Alternatively, host computer system 14 can be one of a variety of homevideo game console systems commonly connected to a television set orother display, such as systems available from Nintendo, Sega, or Sony.In other embodiments, host computer system 14 can be a “set top box”which can be used, for example, to provide interactive televisionfunctions to users, a “network-” or “internet-computer” which allowsusers to interact' with a local or global network using standardconnections and protocols such as used for the Internet and World WideWeb, or other electronic appliance or device allowing the user toprovide input for selection or control. Host computer 14 preferablyincludes a host microprocessor, random access memory (RAM), read onlymemory (ROM), input/output (I/O) circuitry, and other components ofcomputers well-known to those skilled in the art.

Host computer 14 preferably implements one or more host applicationprograms with which a user is interacting via keyboard device 12 andother peripherals, if appropriate, and which may include force feedbackfunctionality. For example, a host application program can be a videogame, word processor or spreadsheet, email program, Web page or browserthat implements HTML or VRML instructions, scientific analysis program,virtual reality training program or application, or other applicationprogram that utilizes input of keyboard device 12 and outputs forcefeedback commands to the device 12. In one embodiment, an applicationprogram utilizes a graphical user interface (GUI) of an operating systemto present options to a user and receive input from the user. Herein,computer 14 may be referred as providing a “computer environment,” whichcan be a graphical user interface, game, simulation, text interface,command line, or other environment. The computer displays “graphicalobjects” or “computer objects,” which are not physical objects, but arelogical software unit collections of data and/or procedures that may bedisplayed as images by computer 14 on a display screen, as is well knownto those skilled in the art. A displayed cursor or a simulated cockpitof an aircraft might be considered a graphical object. The hostapplication program checks for input signals received from the keyboarddevice 12, and outputs force values and/or commands to be converted intoforces output for keyboard device 12. Suitable software drivers whichinterface such simulation software with computer input/output (I/O)devices are available from Immersion Corporation of San Jose, Calif.

Display device 26 can be included in host computer 14 and can be astandard display screen (LCD, CRT, flat panel, etc.), 3-D goggles, orany other visual output device. Typically, the host application providesimages to be displayed on display device 26 and/or other feedback, suchas auditory signals. For example, display screen 26 can display imagesfrom a GUI or text window.

Other peripheral devices such as mouse 30 can also be connected to thehost computer 14. Mouse 30 can be manipulated by the user in two planardimensions to control a cursor or other control in a displayed computerenvironment or provide other input. In one common arrangement, the usermanipulates both mouse 30 and keyboard device 12 to provide input to aword processor, spreadsheet, or similar program running on host computer14. In some embodiments, the mouse 30 can be a haptic feedback mousethat provides tactile sensations and/or kinesthetic forces to the user.For example, the mouse 30 can be mouse device as described in any ofcopending U.S. patent application Ser. Nos. 08/881,691, 08/965,720,09/049,155, 09/103,281, 09/253,132, 09/456,887, and 09/125,711, allincorporated herein by reference. Other peripheral devices may also beused, such as a trackball, joystick, touchpad, stylus, etc., in normalor haptic versions.

FIG. 2 is a side cross-sectional view of the wrist rest 20 of thekeyboard device 12 of FIG. 1. Wrist rest 20 includes one or moreactuators for imparting haptic feedback such as tactile sensations tothe user of the wrist rest 20. The actuator outputs forces on the wristrest 20 which the user is able to feel.

Wrist rest 20 includes a housing 32 and an actuator assembly 34. Housing32 can be provided in a variety of shapes to provide the user with acomfortable surface to rest his or her wrists and/or palms during orbetween typing activity. In some embodiments, the housing 32 can includea soft or spongy top surface to provide additional comfort for the user,so long as forces are adequately transmitted through the top surface.The wrist rest 20 can be coupled to a keyboard housing 16 as shown inFIG. 1, molded with the keyboard housing as a single unit, or can be aseparate piece that is positioned next to the keyboard housing.

Actuator assembly 34 is coupled to the housing 32 to provide hapticfeedback to the user. In the described embodiment, inertial forces areprovided by moving an inertial mass, which causes forces on the housing32 felt by the user who is contacting the housing. A preferredembodiment creates inertial forces that are directed substantially in aparticular degree of freedom, i.e. along a particular axis. Thepreferred direction for the output forces is along the z-axis 36,substantially perpendicular to the support surface on which the wristrest 20 is located. The forces can be directed in other directions inother embodiments. The inertial forces can be created, for example,using a high bandwidth do motor which is coupled to a flexure andprovides inertial forces along a z-axis 36. This embodiment is describedin greater detail with respect to FIG. 3.

In other embodiments, a linear actuator can be used; preferred actuatorsinclude a linear moving voice coil actuator and a linear moving-magnetactuator, which are suitable for high bandwidth actuation. A traditionalservo motor used in a harmonic drive configuration can also be asuitable high bandwidth actuator. This embodiment allows for highfidelity control of force sensations in both the frequency and magnitudedomains. This also allows the forces to be directed along a desired axisand allows for crisp tactile sensations that can be independentlymodulated in magnitude and frequency. For example, actuator assembly 34can be a linear actuator having a stationary portion coupled to thedevice housing 34, and a moving portion that moves linearlyapproximately along the Z-axis. The stationary portion may include amagnet and the moving portion can include a wire coil; or thesecomponents can be reversed. An inertial mass can be coupled to thelinearly-moving portion of the actuator. The actuator oscillates theinertial mass quickly and parallel to the Z axis. Thus, forces producedby the moving mass are transmitted to the housing through the stationaryportion of the actuator and felt by the user as tactile sensations. Oneembodiment of such a linear voice coil actuator is described incopending patent application Ser. No. 09/253,132, which is incorporatedherein by reference. In other embodiments, the stationary portion can bethe coil and the moving portion can be the magnet.

The actuator in the actuator assembly 34 can be a wide variety of typesof actuators. For example, a rotary actuator can be used havingrotational force output that is converted to linear force output througha transmission, as is well known to those skilled in the art. A pagermotor or other actuator having a rotating shaft, a solenoid having avertically-moving portion, a linear voice magnet, DC current controlledlinear motor, a linear stepper motor controlled with pulse widthmodulation of an applied voltage, a piezo-electric actuator, apneumatic/hydraulic actuator, a torquer (motor with limited angularrange), a piezo-electric actuator, etc., can be used.

The actuator assembly 34 can be placed in a variety of positions withinthe housing 34. For example, one preferred embodiment places theactuator on the bottom portion or floor of the housing near the frontportion of the wrist rest 20 so that the actuator is positioned near theuser contact with the top surface of the wrist rest. In yet otherembodiments, the actuator assembly 34 can be connected to a side or topportion of the housing 32 rather than the bottom portion, although it ispreferred that the actuator be oriented to output forces approximatelyalong the Z-axis (and thus the top may be preferable to a side).

The magnitude of forces that can be output with respect to an inertialground are not as high as can be output with respect to an earth ground.The larger the inertial mass, the larger the forces that can be output,so the theoretical limit of force magnitude is very high. Since thewrist rest housing 32 does not need to be moved by the user to operatethe device, the inertial mass can be made fairly large to provide highermagnitude forces. Size may be a constraint, however, in most wrist restembodiments, which include a low profile.

A high bandwidth actuator can alternatively be used to compensate forlower-magnitude forces, i.e., an actuator that can output abrupt changesin force magnitude level. Since the human hand is more sensitive tochanges in force level than to absolute force levels, a high bandwidthactuator used to convey low level forces produced with respect to aninertial ground can be quite effective in producing compelling tactilesensations.

An additional challenge of applying a compelling tactile sensation tothe housing 32 along the described Z-axis is that the wrist rest device20 sits upon a table or other surface 24 and is therefore physicallygrounded along that Z-axis. In other words, the forces applied by theactuator along the Z-axis, with respect to the inertial mass, arecountered by the normal forces applied by the table surface upon thehousing 32. One way to accommodate these countering forces and to allowgreater magnitude forces to be felt by the user is to provide compliancein the z-axis between the surface 24 and a portion of the housing 32that is contacted by the user. In a preferred embodiment, a flexible orsemi-flexible element is provided between the housing 32 and the surface24. For example, a number of compliant feet 38 can be coupled to theunderside of the housing 32 to make contact with surface 24. The feet 38can be made out of a material such as rubber, foam, or the like.Preferably, the feet have a high compliance in the z-axis to allow thedesired magnitude of haptic sensations in the z-axis. Descriptions oftuning compliance to provide greater-magnitude forces are provided incopending application No. 60/157,206, incorporated herein by reference.In other embodiments, a whole layer of compliant material can bepositioned underneath or coupled to the underside of the housing 32.

In other embodiments, the desired compliance can be provided in other oradditional elements of the wrist rest 20. For example, a cover or topportion of the device can be flexibly or moveably coupled to a baseportion of the housing 32, where z-axis motion between these portionsmagnifies the haptic sensations. For example, the top half of thehousing 32 which the user contacts can be coupled to the bottom half bya rubber joint or other flexible layer or coupling. Or, the coverportion contacted by the user can be a smaller portion of the topsurface of the housing 32, which is compliant, e.g. a rubber diaphragm.It should be noted that such a compliant cover portion is not drivendirectly by the actuator, but is provided to more efficiently transmitinertial forces to the user.

Alternate embodiments include coupling the stationary portion of theactuator to a portion of the housing 32 that is different from the baseor bottom portion of the housing (e. g. the side of the housing), andproviding an amount of flex between the actuator-coupled portion of thehousing and the base portion that is in contact with the surface 24. Forexample, flexible hinges or connecting members can couple the twoportions. This can improve the transmissibility of the tactilesensations, leader to greater magnitude forces.

A different implementation that may be used for generating vibrotactilesensations is a motor (or other type of actuator) having a rotatingshaft; where an inertial mass is connected to the shaft at an off-centerpoint of the, mass. The inertial (eccentric) mass is rotated around themotor shaft with respect to the interface device at various speeds. Thiscan create sinusoidal force signals at various frequencies dependingupon the current driven through the motor. One disadvantage with such amethodology is slow response time because the spinning mass mustaccelerate and decelerate over time to achieve the rotational velocitycorresponding to a desired frequency output.

Thus, directed inertial forces can be output along the X and Y-axes. Oneproblem in the present invention for outputting forces in the X and Ydirections is that the housing 32 is often made stiff in thosedirections, such that forces will not be easily felt. For example, therubber feet 38 can be made compliant in the z-direction, but suchcompliance does not greatly help to magnify forces output in the X-and/or Y-axes. The rubber feet 38 are typically stiff in the x-y planeto prevent the housing 32 from wobbling when the user contacts the wristrest. However, compliance in the x- and/or y-directions can be providedin alternate embodiments that output forces in the x- or y-directions.

In other embodiments, contact forces rather than inertial forces can beoutput to the user. Contact forces are more direct forces applied to theuser, such as by moving one element of the housing relative to otherparts of the housing, where the moving element is coupled to the movingportion of the actuator. The moving element directly contacts the user'shand to produce forces so that the user directly feels the motion of theelement, rather than moving an inertial mass and producing forcesthroughout the housing.

Contact forces can be applied in different ways. For example, a topportion of the housing 32 can be movably coupled to a base portion ofthe housing 32 and can be coupled to a moving portion of the actuatorassembly 34. The top portion can be the upper half of the housing 32,for example, and can be coupled to the base portion by a rotary hinge,flex coupling, mechanical bearing, or other coupling that allowsrotational movement of the top portion with respect to the base portion,or linear motion in a similar fashion. The top portion can be coupled tothe moving portion of the actuator assembly 34 by a member 40 that isrotatably coupled to the top portion and rotatably coupled to theactuator portion, for example. Alternatively, a flexure or othermoveable coupling can be used to allow rotational or linear motion ofthe cover portion. The cover portion can also be made of a flexiblematerial that can flex to provide its motion and contact forces to theuser, such as a rubber diaphragm.

Although the cover portion may actually rotate with respect to the baseportion, the range of motion is preferably small enough to approximatelinear motion. Preferably, the cover portion has an origin position(rest position) in the middle of its range of motion so that theactuator can move it both up and down. Also, a centering spring bias ispreferably provided to move the cover portion to the origin positionwhen no force is applied by the actuator (and by the user). Theseembodiments are described in greater detail in copending patentapplication Ser. Nos. 09/103,281 and 60/172,953, incorporated herein byreference.

Of course, both the inertial forces described with reference to FIGS. 2and 3 as well as the contact forces described above can be included in asingle embodiment. For example, the link member and moving element(cover portion or other moving member) can be coupled to the movinginertial mass. Such an embodiment advantageously provides inertialforces that can always be felt by the user, regardless of how thehousing is contacted, as well as contact forces which can be compellingin particular situations.

In some embodiments, buttons can also be included on the wrist rest 20to allow the user to provide “command gestures” to the host computer 14by pushing one or more buttons. The user can push a button down toprovide a command to the computer. The command signal, when received bythe host computer, can manipulate the graphical environment in a varietyof ways. In some embodiments, one or more of the buttons can be providedwith independent force feedback, as described in copending patentapplication Ser. No. 09/235,132.

A variety of tactile sensations can be output to the user of thekeyboard device 12. For example, the inertial mass can be oscillatedalong the z-axis to create a vibration that is transmitted to the user.The frequency and/or magnitude of the vibration can be commanded. A“pulse” can also be output, in which a single or small number ofoscillations are output, causing a single jolt to the user that cancorrespond with an event or interaction within the computer environment.

These haptic sensations can be correlated with events or interactionsdisplayed or otherwise implemented by the computer, such as thereception of an email message, an appointment notification, a carriagereturn when typing text, the advancement to a new page in a document,the scrolling of a line of text off a displayed window, the opening of awindow or program, the crossing of a text cursor over a tab marker,margin of a page, or other defined location, etc. (herein, a “textcursor” is a separate cursor that is used to indicate where the nexttext character will be added in a document or on the screen, and isdifferent and distinct from a “mouse cursor” that is a separate cursorcontrolled by a mouse, trackball, or other device). In games orsimulations, the haptic sensations can be correlated with interactionsof a controlled entity, such as when a controlled character impacts awall, falls in water, or is shot by an opponent's gun.

If the keyboard is being used in conjunction with a mouse, trackball,touchpad, or other input device, then keyboard haptic sensations can beoutput also based on interactions of a mouse-controlled cursor orentity, e.g. the user may leave one hand on the keyboard and thus isable to experience keyboard haptic sensations that are based on mousemotions (and may also experience haptic sensations with the mouse handif the mouse device has haptic feedback capability). Thus, keyboardsensations can be output based on the mouse cursor moving onto or out ofan icon or hyperlink, over nodes in a flow chart, across menu items, oracross a window boundary, the cursor moving within a window interiorregion, a collision of ‘a cursor or other controlled object/entity witha different object, etc. In some embodiments, haptic sensations can bedesigned to work in conjunction with each other, assuming the user hasone hand on a mouse or similar pointing device and the other hand on akeyboard. For example, an impact from an explosion on a controlledcharacter's left side can cause only the keyboard actuator to output ajolt and not the mouse actuator, assuming the user has a left hand onthe keyboard and a right hand on the mouse. Or, the keyboard actuatorand mouse actuator can alternate outputting force pulses in a sequenceto provide a “spatial” haptic effect.

FIG. 3 shows an example 60 of actuator assembly 34 that can be used inthe present invention as described above with reference to FIG. 2. Inthis embodiment, the actuator itself is used as the inertial mass. Theactuator assembly includes a flexure for providing inertia forces andwhich includes an inherent spring bias that brings the inertial massback to an origin position when no forces are output on the mass.

Actuator assembly 60 includes a grounded flexure 68 and an actuator 66coupled to the flexure 68. The flexure 68 can be a single, unitary piecemade of a material such as polypropylene plastic (“living hinge”material) or other flexible material, or can be made up of two or morepieces that are assembled together. This type of material is durable andallows flexibility of the flex joints (hinges) in the flexure when oneof the dimensions of the joint is made small, but is also rigid in theother dimensions, allowing structural integrity as well as flexibilitydepending on thickness. Some embodiments of flexures used in hapticfeedback devices are described in patent application Ser. Nos.09/376,649; 60/172,593; and 60/182,868, all incorporated herein byreference. Flexure 68 can be grounded to the bottom inside surface ofhousing 32, for example.

Actuator 66 is shown coupled to the flexure 68. The housing of theactuator is coupled to a receptacle portion 82 of the flexure 68, whichhouses the actuator 66 as shown. Preferably, an amount of space isprovided above and below the actuator 66 and receptacle portion 82 toallow motion of the actuator 66 in the z-axis; thus, the receptacleportion 82 should not be coupled to ground since it moves to provide anapproximately linear motion, as explained below.

A rotating shaft 84 of the actuator is coupled to the flexure 68 in abore 85 of the flexure 68 and is rigidly coupled to a central rotatingmember 90. The rotating shaft 84 of the actuator is rotated about anaxis A which also rotates member 90 about axis A. Rotating member 90 iscoupled to a first portion 92 a of an angled member 91 by a flex joint94. The flex joint 94 preferably is made very thin in the dimension itis to flex, i.e. one of the x- or y-axis dimensions (the y-axisdimension for the embodiment of FIG. 3), so that the flex joint 94 willbend when the rotating portion 90 moves the first portion 92 aapproximately linearly. The first portion 92 a is coupled to thegrounded portion 100 of the flexure by a flex joint 98 and the firstportion 92 a is coupled to a second portion 92 b of the angled member byflex joint 102. The second portion 92 b, in turn, is coupled at itsother end to the receptacle portion 82 of the flexure by a flex joint104.

The angled member 91 that includes first portion 92 a and second portion92 b moves approximately linearly along the x-axis as shown by arrow 96.When the flexure is in its origin position (rest position), the portions92 a and 92 b are preferably angled as shown with respect to theirlengthwise axes. This allows the rotating member 90 to push or pull theangled member 91 along either direction as shown by arrow 96. Thisconfiguration allows forces output by the actuator to be magnified asthey are transmitted to the moveable receptacle portion 82 and to themoving element of the interface device (inertial mass, cover portion,button, etc.). The actual force output depends on the angle of theopposing portions 92 a and 92 b with respect to each other's lengthwiseaxes (or with respect to the y-axis).

The actuator 66 is operated in only a fraction of its rotational rangewhen driving the rotating member 90 in two directions, allowing highbandwidth operation and high frequencies of pulses or vibrations to beoutput. The resulting motion of the angled member 91 compresses orstretches the flexure with respect to the grounded portion 81. Tochannel this compression or stretching into the desired z-axis motion, aflex joint 112 is provided in the flexure portion between the receptacleportion 82 and the grounded portion 100. Flex joint 112 is oriented toflex along the z-axis (i.e. provide rotation about an x-axis), unlikethe flex joints 94, 98, 102, and 104, which flex in the x-y plane(provide rotation about a z-axis). The flex joint 112 allows thereceptacle portion 82 (as well as the actuator 66, rotating member 90,and second portion 92 b) to move linearly in the z-axis in response tomotion of the portions 92 a and 92 b. In actuality, the receptacleportion 82 and actuator 66 move only approximately linearly, since theyhave a small arc to their travel; however, this arc is small enough tobe ignored for most practical purposes. Thus, when the rotational motionof the rotating member 90 causes the ends of the angled member 91 tomove further apart (direction 106 a), the receptacle portion flexes downabout flex joint 112 along the z-axis. Similarly, if the ends of angledmember 91 are made to move closer together (direction 106 b), thereceptacle 82 and actuator 66 move upwardly along the z-axis, in effectlifting the actuator 66 upward. A flex joint 110 is provided in thefirst portion 92 a of the angled member 91 to allow the flexure aboutflex joint 112 in the z-direction to more easily occur. The essentialelements of the embodiment shown in FIG. 3 can alternatively beimplemented with a wide variety of components, including mechanicalcouplings such as bearings, pin joints, etc.

By quickly changing the rotation direction of the actuator shaft 84, theactuator/receptacle can be made to oscillate along the z-axis and createa vibration on the housing with the actuator 66 acting as an inertialmass. Preferably, enough space is provided above and below the actuatorto allow its range of motion without impacting any surfaces or portionsof the housing 32, since such impacts can degrade the quality of thepulse, vibrations, and other haptic sensations output to the user.Alternatively, stop mechanisms or travel limiters can be provided toprevent such impacts with the housing.

In addition, the flex joints included in flexure 68, such as flex joint112, act as spring members to provide a restoring force toward theorigin position (rest position) of the actuator 66 and receptacleportion 82. This centering spring bias reduces the work required by theactuator to move itself since the actuator output force need only bedeactivated once the actuator reaches a peak or valley position in itstravel. The spring bias brings the actuator back to its rest positionwithout requiring actuator force output. This system can be tuned sothat amplification of forces output by the actuator is performed at anefficient level, e.g. near the natural frequency of the system. Tuningsuch a harmonic system using an inertial force actuator and compliantsuspension of a moving mass is described in greater detail in copendingprovisional patent application No. 60/157,206, which is incorporatedherein by reference. For example, in the flexure 68, the springconstants can be tuned by adjusting the thickness of the flex joints 94,102, 98, 104, 110, and/or 112 (in the dimension in which they are thin).In some embodiments, additional springs can be added to provideadditional centering forces if desired, e.g., mechanical springs such asleaf springs.

The flexure 68 is advantageous in the present invention because it hasan extremely low cost and ease of manufacturability, yet allowshigh-bandwidth forces to be transmitted as inertial forces. Since theflexure 68 is a unitary member, it can be manufactured from a singlemold, eliminating significant assembly time and cost. Furthermore, it isrigid enough to provide strong vibrations with respect to the housingand to provide significant durability. In addition, the flexure providesclose to zero backlash and does not wear out substantially over time,providing a long life to the product.

Providing the actuator 66 as the inertial mass that is driven in thez-axis has several advantages. For example, this embodiment saves thecost of providing a separate inertial mass and saves space and totalweight in the device, which are important considerations in the homeconsumer market. Another advantage of the actuator assembly 80 is thatit has a very low profile in the z-axis dimension. This is allowed bythe orientation of the actuator 66 in the x-y plane, e.g. the axis ofrotation A of the actuator shaft 84 is parallel to the z-axis. Thismakes the actuator assembly 80 very suitable for use in low-profilehousings.

In some embodiments, a larger actuator 66 can be used to both outputgreater magnitude forces and to act as a larger inertial mass, resultingin higher magnitude haptic sensations as experienced by the user. Or, anadditional mass can be coupled to the actuator 66 shown in theembodiment of FIG. 3 to provide a larger mass and overallhigher-magnitude haptic sensations. When tuning the system for suchforces, the resonant frequency of the system should remain the same(e.g. 25 Hz is one tested frequency). Thus, the stiffness of the flexure68 may have to be modified to maintain the desired resonant frequencywhen increasing the size of the inertial mass. Members of the flexurecan be stiffened by increasing their width and/or by providing a stiffermaterial.

Of course, in other embodiments, the actuator need not be used as theinertial mass. For example, a flexure can provide a centering springbias to a separate inertial mass coupled to the flexure, or an inertialmass that is incorporated as part of the flexure. An example of such anembodiment is described in provisional application No. 60/172,953, filedDec. 21, 1999, and incorporated herein by reference.

In yet other embodiments, multiple actuator assemblies 34 can beprovided in different areas in the housing 32. The actuator assembliescan be controlled to output inertial forces at the same time, or atdifferent times based on the keys 104 pressed by the user or other input(from buttons, mouse, etc.) In still other embodiments, the wrist restcan include a sensor that is able to determine when the user iscontacting the wrist rest, so that inertial forces are output only whenthe user is contacting the wrist rest. Furthermore, in some embodiments,the sensor is able to detect the location of the user's contact on therest 20, either to a coarse or fine resolution. If multiple actuatorassemblies are provided in such an embodiment, the actuator assembliesclosest the location of user contact can be active to output forceswhile actuator assemblies further away can be deactivated until usercontact is provided within a predetermined close distance thereof.

FIG. 4 a is a perspective view of a second embodiment of a keyboarddevice 100 suitable for use with the present invention. Device 100 is inthe form of a numeric keypad or similar smaller keyboard, which can beoperated by a single hand of a user.

Keyboard device 100 includes a housing 102 and a number of keys 104. Forexample, a common implementation provides number and arithmetic operatorkeys which can be used to perform operations on numbers presented in anapplication program running on host computer 14. In otherimplementations, other types of keys can be provided. For example, thekeys 104 can provide input to a game or simulation running on hostcomputer 14 to control a graphical object or entity.

FIG. 4 b is a side elevational view of the keyboard device 100 of FIG. 4a. In the described embodiment, an actuator assembly 106 is providedwithin the housing 102 and coupled to the bottom inside surface of thehousing. The actuator assembly 106 can be any of the embodimentsdescribed above to provide inertial forces along an axis approximatelyparallel to the z-axis. The inertial forces are transmitted through thehousing 102 and through the keys 104 to the user whose fingers arecontacting the keys.

The embodiment 100 preferably includes a compliant element providedbetween the housing 102 and the support surface 24 to allowamplification (and/or disallow damping) of inertial forces on thehousing 102. In FIG. 4 b, the compliant element is shown as rubber feet108 similar to the feet shown for the embodiment of FIG. 2. Thecompliant element can alternatively be an entire layer positionedbetween housing and support surface, and/or can be of any compliantmaterial such as foam, etc.

In other embodiments, full-sized keyboards (as shown in FIG. 1) caninclude the actuator assembly 106 within the keyboard housing 16 similarto the embodiment of FIGS. 4 a and 4 b. Furthermore, multiple actuatorassemblies 106 or 34 can be included within the keyboard housing 102 or16, similarly as described above with reference to FIG. 2.

FIG. 5 is a perspective view of another embodiment 150 of a keyboarddevice, which can include the haptic functionality of the presentinvention. Device 150 allows a player to provide input to the hostcomputer system with a single hand that rests on the housing of thedevice 150 and can manipulate various controls. For example, a user'spalm can rest on a raised central portion 152 of the device 150 and thefingertips can select the buttons 154, four- or eight-way hat switch156, and dial 158. In one configuration, the user operates the device150 with his or her left hand, and operates a different device such as amouse or trackball with his or her right hand (or the devices can beswitched places). Thus, the device 150 can replace a standard keyboardfor providing input to such applications as games or the like. Oneexample of a control device providing input functions similar to device150

Device 150 of the present invention also includes an actuator assembly160 which is preferably implemented as any of the embodiments describedabove to provide haptic sensations to the user correlated to displayedevents and interactions. For example, the actuator assembly 160 can becoupled to a bottom portion of the housing 162 of the device 150 andmove an inertial mass approximately along the z-axis perpendicular tothe flat surface on which the device 150 rests. The actuator assembly160 can be positioned at different locations within the housing, such asdirectly under the raised portion 152, under the buttons 154 and othercontrols, etc. Multiple actuator assemblies 150 can be provided and canbe used to provide different haptic effects as described above, e.g.particular actuator assemblies can be activated underneath particularactive controls, to make one side of the device 150 vibrate, etc. Thehaptic sensations can be provided in accordance with displayed gameevents such as collisions, shooting a gun, moving over bumpy terrain,etc.

FIG. 6 is a block diagram illustrating one embodiment of the hapticfeedback system of the present invention including a localmicroprocessor and a host computer system.

Host computer system 14 preferably includes a host microprocessor 200, aclock 202, a display screen 26, and an audio output device 204. The hostcomputer also includes other well-known components, such as randomaccess memory (RAM), read-only memory (ROM), and input/output (I/O)electronics (not shown). Display screen 26 displays images of a gameenvironment, operating system application, simulation, etc. Audio outputdevice 204, such as speakers, is preferably coupled to hostmicroprocessor 200 via amplifiers, filters, and other circuitry wellknown to those skilled in the art and provides sound output to user whenan “audio event” occurs during the implementation of the hostapplication program. Other types of peripherals can also be coupled tohost processor 200, such as storage devices (hard disk drive, CD ROMdrive, floppy disk drive, etc.), printers, and other input and outputdevices.

Keyboard device 12 is coupled to host computer system 14 by abi-directional bus 20. The bi-directional bus sends signals in eitherdirection between host computer system 14 and the interface device. Bus20 can be a serial interface bus, such as an RS232 serial interface,RS-422, Universal Serial Bus (USB), MIDI, or other protocols well knownto those skilled in the art; or a parallel bus or wireless link. Forexample, the USB standard provides a relatively high-speed interfacethat can also provide power to actuator 66.

Keyboard device 12 can in some embodiments include a localmicroprocessor 210. Local microprocessor 210 can optionally be includedwithin the housing of keyboard device 12 to allow efficientcommunication with other components of the device. Processor 210 isconsidered local to device 12, where “local” herein refers to processor210 being a separate microprocessor from any processors in host computersystem 14. “Local” also preferably refers to processor 210 beingdedicated to haptic feedback of device 12. Microprocessor 210 can beprovided with software instructions to wait for commands or requestsfrom computer host 14, decode the command or request, and handle/controlinput and output signals according to the command or request. Inaddition, processor 210 can operate independently of host computer 14 byreading key sensor signals and calculating appropriate forces from thosesensor signals, time signals, and stored or relayed instructionsselected in accordance with a host command. Some examples ofmicroprocessors that can be used as local microprocessor 210 include theMC68HC71 1E9 by Motorola, the PIC 16C74 by Microchip, and the 82930AX byIntel Corp., for example, as well as more sophisticated force feedbackprocessors such as the Immersion Touchsense Processor from ImmersionCorp. Microprocessor 210 can include one microprocessor chip, multipleprocessors and/or co-processor chips, and/or digital signal processor(DSP) capability.

Microprocessor 210 can receive signals from sensor 212 and providesignals to actuator 66 in accordance with instructions provided by hostcomputer 14 over bus 20. For example, in a local control embodiment,host computer 14 provides high level supervisory commands tomicroprocessor 210 over bus 20, and microprocessor 210 decodes thecommands and manages low level force control loops to sensors and theactuator in accordance with the high level commands and independently ofthe host computer 14. This operation is described in greater detail inU.S. Pat. No. 5,734,373, incorporated herein by reference. In the hostcontrol loop, force commands are output from the host computer tomicroprocessor 210 and instruct the microprocessor to output a force orforce sensation having specified characteristics. The localmicroprocessor 210 reports data to the host computer, such as key pressdata that describes which keys have been pressed. The data can alsodescribe the states of other buttons and sensors. The host computer usesthe data to update executed programs. In the local control loop,actuator signals are provided from the microprocessor 210 to actuator 66and sensor signals are provided from the sensor 212 and other inputdevices 218 to the microprocessor 210. Herein, the terns “tactilesensation” refers to either a single force or a sequence of forcesoutput by the actuator 66 which provide a sensation to the user. Forexample, vibrations, a single jolt or pulse, or a texture sensation areall considered tactile sensations. The microprocessor 210 can processinputted sensor signals to determine appropriate output actuator signalsby following stored instructions. The microprocessor may use sensorsignals in the local determination of forces to be output on the userobject, as well as reporting locative data derived from the sensorsignals to the host computer.

In yet other embodiments, other hardware can be provided locally tokeyboard device 12 to provide functionality similar to microprocessor210. For example, a hardware state machine incorporating fixed logic canbe used to provide signals to the actuator 66 and receive sensor signalsfrom sensors 212, and to output tactile signals according to apredefined sequence, algorithm, or process. Techniques for implementinglogic with desired functions in hardware are well known to those skilledin the art. Such hardware can be better suited to less complex forcefeedback devices, such as the device of the present invention.

In a different, host-controlled embodiment, host computer 14 can providelow-level force commands over bus 20, which are directly transmitted tothe actuator 66 via microprocessor 210 or other circuitry. The hostcomputer 14 also directly receives sensor signals from the keys of thekeyboard as they are pressed. Host computer 14 thus directly controlsand processes all signals to and from the keyboard device 12, e.g. thehost computer directly controls the forces output by actuator 66 or 60and directly receives sensor signals from sensors 212 and other inputdevices 218. This embodiment may be desirable to reduce the cost of theforce feedback device yet further, since no complex local microprocessor210 or other processing circuitry need be included in the device.

In the simplest host control embodiment, the signal from the host to thedevice can be a single bit that indicates whether to pulse the actuatorat a predefined frequency and magnitude. In a more complex embodiment,the signal from the host could include a magnitude, giving the strengthof the desired pulse. In yet a more complex embodiment, the signal caninclude a direction, giving both a magnitude and a sense for the pulse.In still a more complex embodiment, a local processor can be used toreceive a simple command from the host that indicates a desired forcevalue to apply over time. The local microprocessor then outputs theforce value for the specified time period based on the one command,thereby reducing the communication load that must pass between host anddevice. In an even more complex embodiment, a high-level command withtactile sensation parameters can be passed to the local processor on thedevice, which can then apply the full sensation independent of hostintervention. Such an embodiment allows for the greatest reduction ofcommunication load. Finally, a combination of numerous methods describedabove can be used for a single keyboard device 12.

Local memory 222, such as RAM and/or ROM, is preferably coupled tomicroprocessor 210 in keyboard device 12 to store instructions formicroprocessor 210 and store temporary and other data. For example,force profiles can be stored in memory 222, such as a sequence of storedforce values that can be output by the microprocessor, or a look-uptable of force values to be output based on the current position of theuser object. In addition, a local clock 224 can be coupled to themicroprocessor 210 to provide timing data, similar to the system clockof host computer 14; the timing data might be required, for example, tocompute forces output by actuator 66 (e.g., forces dependent on timedependent factors). In embodiments using the USB communicationinterface, timing data for microprocessor 210 can be alternativelyretrieved from the USB signal.

Key sensors 212 sense the press of any of the keys of the keyboarddevice and provide signals to microprocessor 210 (or host 14) indicativeof the key presses. Sensors suitable for detecting key presses are wellknown to those skilled in the art.

Actuator 66 (or other type of actuator) transmits forces to the housing32 of the wrist rest 20 or the housing 16 or 102 of the keyboard deviceitself as described above with reference to FIGS. 2 and 4 a-4 b inresponse to signals received from microprocessor 210 and/or hostcomputer 14. The actuator can be a linear or rotary actuator, linear orrotary DC motor, solenoid, pager motor, moving magnet actuator,piezo-electric actuator, etc. Actuator 66 is provided to generateinertial forces by moving an inertial mass; in the preferred embodiment,the mass is moved linearly and approximately perpendicular to thesurface on which the device is supported. The actuator can additionallyor alternatively drive a moving element to provide contact forces asdescribed above.

The actuator described herein has the ability to apply short durationforce sensation on the housing of the device (and/or on the user'shand). This short duration force sensation is described herein as a“pulse.” Ideally the “pulse” is directed substantially along a Z-axisorthogonal to the X-Y plane of the support surface 24. In progressivelymore advanced embodiments, the magnitude of the “pulse” can becontrolled; the sense of the “pulse” can be controlled, either positiveor negative biased; a “periodic force sensation” can be applied on thehousing, where the periodic sensation can have a magnitude and afrequency, e.g. a sine wave; the periodic sensation can be selectableamong a sine wave, square wave, saw-toothed-up wave, saw-toothed-down,and triangle wave; an envelope can be applied to the period signal,allowing for variation in magnitude over time; and the resulting forcesignal can be “impulse wave shaped” as described in U.S. Pat. No.5,959,613. There are two ways the period sensations can be communicatedfrom the host to the device. The wave forms can be “streamed” asdescribed in U.S. Pat. No. 5,959,613 and pending provisional patentapplication 60/160,401, both incorporated herein by reference. Or thewaveforms can be conveyed through high level commands that includeparameters such as magnitude, frequency, and duration, as described inU.S. Pat. No. 5,734,373.

Alternate embodiments can employ additional actuators for providingtactile sensations or forces in the planar degrees of freedom of thekeyboard device 12 as explained above.

Actuator interface 216 can be optionally connected between actuator 66and microprocessor 110 to convert signals from microprocessor 210 intosignals appropriate to drive actuator 66. Interface 38 can include poweramplifiers, switches, digital to analog controllers (DACs), analog todigital controllers (ADCs), and other components, as is well known tothose skilled in the art.

Other input devices 218 can be included in keyboard device 12 and sendinput signals to microprocessor 210 or to host 14 when manipulated bythe user. Such input devices can include additional buttons, dials,joysticks, switches, scroll wheels, or other controls or mechanisms.These other input devices 218 can be positioned on the housing 32 or 102in some embodiments.

Power supply 220 can optionally be included in keyboard device 12coupled to actuator interface 216 and/or actuator 66 to provideelectrical power to the actuator or be provided as a separate component.Alternatively, and more preferably, power can be drawn from a powersupply separate from keyboard device 12, or power can be received acrossa USB or other bus. Also, received power can be stored and regulated bykeyboard device 12 and thus used when needed to drive actuator 66 orused in a supplementary fashion. Because of the limited power supplycapabilities of USB, a power storage device may be required in thedevice to ensure that peak forces can be applied (as described in U.S.Pat. No. 5,929,607, incorporated herein by reference). For example,power can be stored over time in a capacitor or battery and thenimmediately dissipated to provide a jolt sensation to the device.Alternatively, this technology can be employed in a wireless keyboarddevice 12, in which case battery power is used to drive the tactileactuator.

A deadman switch 232 can optionally be included to allow thedeactivation of actuator 66 when the user is not contacting or using thekeyboard device. For example, the user must continually activate orclose deadman switch 232 during operation of keyboard device 12 toenable the actuator 66. If, at any time, the deadman switch isdeactivated (opened), power from power supply 220 is cut to actuator 66(or the actuator is otherwise disabled) as long as the deadman switch isopened. Embodiments include an optical switch, an electrostatic contactswitch, a button or trigger, a hand weight deadman switch, etc.

While this invention has been described in terms of several preferredembodiments, it is contemplated that alterations, permutations andequivalents thereof will become apparent to those skilled in the artupon a reading of the specification and study of the drawings. Forexample, many different types of tactile sensations can be provided withthe actuator of the present invention and many different types ofactuators can be used. Furthermore, certain terminology has been usedfor the purposes of descriptive clarity, and not to limit the presentinvention. It is therefore intended that the following appended claimsinclude alterations, permutations, and equivalents as fall within thetrue spirit and scope of the present invention.

1. A system comprising: a first device of a computer, the first devicecomprising an input device; a second device of the computer, the seconddevice physically separate from the first device, the second devicecomprising a keyboard; a processor configured to receive a first signalfrom the first device; and an actuator configured to receive a secondsignal from the processor, the second signal based on the first signaland configured to cause the actuator to output a haptic effect to thesecond device.
 2. The system of claim 1, wherein the input devicecomprises at least one of a mouse, a trackball, a touchpad, or a touchscreen.
 3. The system of claim 1, wherein the haptic effect comprises atleast one of a vibrotactile force, a kinesthetic force, a contact forceor an inertial force.
 4. The system of claim 1, wherein the input devicecomprises an input device actuator, the input device actuator configuredto receive a third signal from the processor, the third signalconfigured to cause the input device actuator to output a haptic effectto the input device.
 5. The system as recited in claim 1, wherein theactuator comprises one of a pager motor, a voice coil, a solenoidactuator, a stepper motor, a piezo-electric actuator, a hydraulicactuator, or a pneumatic actuator.
 6. A method comprising: receiving afirst signal from a first device of a computer, the first devicecomprising an input device; transmitting a second signal to an actuator,the second signal based at least in part on the first signal; outputtinga haptic effect to a second device of the computer, the second devicephysically separate from the first device, the second device comprisinga keyboard based on the second signal.
 7. The method of claim 6, whereinoutputting the haptic effect further comprises moving a cover portion ofthe keyboard, the cover portion moveably coupled to a base portion ofthe keyboard.
 8. The method of claim 6, further comprising: transmittinga third signal to an input device actuator; and outputting a hapticeffect to the input device based at least in part on the third signal.9. A system comprising: a first device of a computer, the first devicecomprising a keyboard; and an actuator configured to receive an actuatorsignal from a processor and to output a haptic effect to the firstdevice based on the actuator signal, the actuator signal based on aninput signal received by the processor from a second device of thecomputer, the second device physically separate from the first device.